﻿using System.ComponentModel.DataAnnotations;
using Volo.Abp;
using Volo.Abp.Domain.Entities;
using Volo.Abp.Identity;

namespace EcoSystem
{
    /// <summary>
    /// 行政区域信息
    /// </summary>
    public class Region : AggregateRoot<string>, ISoftDelete
    {
        /// <summary>
        /// 上级编码
        /// </summary>
        [MaxLength(32)]
        public string ParentId { get; set; }

        /// <summary>
        /// 路径编码
        /// </summary>
        [MaxLength(32)]
        public string PathCode { get; set; }

        /// <summary>
        /// 级别
        /// </summary>
        public RegionLevel Level { get; set; }

        /// <summary>
        /// 名称
        /// </summary>
        [MaxLength(32)]
        public string Name { get; set; }


        [MaxLength(32)]
        public string ParentName { get; set; }

        /// <summary>
        /// 完整名称
        /// </summary>
        [MaxLength(128)]
        public string FullName { get; set; }

        /// <summary>
        /// 是否启用
        /// </summary>
        public bool Status { get; set; }

        /// <summary>
        /// 经度
        /// </summary>
        [MaxLength(32)]
        public string Longitude { get; set; }

        /// <summary>
        /// 维度
        /// </summary>
        [MaxLength(32)]
        public string Latitude { get; set; }
        
        /// <summary>
        /// 拼音首字母
        /// </summary>
        [MaxLength(32)]
        public string Pinyin { get; set; }

        /// <summary>
        /// 删除标识
        /// </summary>
        public bool IsDeleted { get; set; }

    }
}
